#ifndef MYLINE_H
#define MYLINE_H

#include <QObject>
#include <QGraphicsItem>
#include <QGraphicsSceneContextMenuEvent>
#include <QPen>

class MyVex;

class MyLine : public QGraphicsLineItem
{
    public:
    MyVex *s;//起点指针
    MyVex *e;//终点指针
    QMenu *itemMenu;//右键菜单
    QPen *pen;//笔
    QGraphicsLineItem* arrow_1;//箭头
    QGraphicsLineItem* arrow_2;
    void UpdatePos();//更新函数，用于顶点移动时，即使更新边的位置
    void setVirtual();//将边设置为虚线
    void setSolid();//设置为实线

    virtual void contextMenuEvent(QGraphicsSceneContextMenuEvent *event);//重写以实现右键菜单
    explicit MyLine(MyVex *s,MyVex *e,QMenu *itemMenu = nullptr,QGraphicsItem *parent = nullptr);//构造函数
    ~MyLine();//析构
};

#endif // MYLINE_H
